A modern telecommunications system often comprises one or more switched telephone networks and one or more Internet Protocol-based packet networks. These two different types of networks are interconnected by a media gateway, which acts as a translator between the two types of networks. The media gateway enables multimedia communications, such as voice and video, over multiple transport protocols end to end.
Because the media gateway connects different types of networks, one of its main functions is to convert between the different transmission and coding techniques used across the different networks. For example, a Voice-over-Internet-Protocol-capable (VoIP-capable) media gateway performs the conversion between time division multiplexed voice media that originate at a switched telephone network telecommunications terminal and VoIP datagram media that is intended for an Internet Protocol network terminal, as part of a telephone conversation between two parties; of course, the media gateway has to perform the conversion in the other direction as well. Other functions that the media gateway provides are echo cancellation, tone detection, tone generation (e.g., dual tone multi-frequency tones, etc.), and conferencing.
Since a packet stream that is received from the Internet Protocol network comprises data packets and control packets, which contain addressing information, the VoIP media gateway converts the received packets to a time division multiplexed stream while processing the control packets. The media gateway must perform the conversion in a timely manner to minimize the possibility of packet loss, which the listening party on a call might perceive. To handle all of the packets responsively and without unacceptable delay or jitter, the media gateway uses digital signal processors, which are dedicated devices that are capable of the high-speed packet processing that is required for the conversion. Each digital signal processor comprises multiple processing resources, such as processing channels, to handle multiple calls and the different conversion formats across the calls. For example, the conversion formats might be distinguished from one another by codec type, encryption algorithm, payload values, addressing information, or redundancy in the information transmitted. Protocol standards and formulas exist that govern these properties, such as G.711 and G.729 compression/decompression algorithms. Similarly, the media gateway must also perform the conversion in the other direction from a time division multiplexed stream to Internet Protocol packets in a timely manner.
One or more media gateways are controlled by a media gateway controller, which provides the call control and signaling functionality for each media gateway and across media gateways. Communication between media gateways and media gateway controllers is achieved by means of protocols such as H.248, Media Gateway Control Protocol (MGCP), and so forth. During a call initialization that involves an Internet Protocol (IP) terminal, the media gateway controller provides to the IP terminal the IP address of the media gateway resource that is handling the call. This enables the IP terminal to specify the proper destination address of the packets that it originates and to recognize the packets that are being sent to the terminal. Alternatively, instead of a call involving an IP terminal, the call could involve another media gateway that exchanges packets with the aforementioned media gateway resource that is handling the call.
The media gateway controller and a selected media gateway work together to set up a call between a telecommunications terminal in one type of network, such as the IP network, and a terminal in another type of network, such as the switched telephone network. First, as part of a resource negotiation the media gateway controller requests the selected media gateway that it has selected to provide a list of available signal processing resources from among those that are supported by the IP terminal. The media gateway determines what resources are available and what conversion formats can be accommodated by those resources. Normally, the media gateway controller proceeds to select a resource, provides the necessary addressing information to the IP terminal involved in the call, and responds back to the media gateway with an indication of the assigned resource.
However, between the time at which a digital signal processor resource is identified by the media gateway to possibly handle the call and the time at which the media gateway receives an indication that the controller has assigned the resource to the call, a malfunction might have occurred that prevents the signal processor from handling the packets of the call. Although a mechanism does exist to inform the media gateway controller that an error has occurred, one or more of the call parties are consequently subjected to a prolonged period during which nothing is heard on the bearer channel. This undesirable condition can result in user dissatisfaction.
What is needed is an improved technique for recovering from the described error scenario that involves a malfunctioning media gateway and the corresponding media gateway controller, without some of the disadvantages in the prior art.